package com.freedo.demo.domain.i;

import java.util.List;

/**
 * 数据操作基础类
 * @author murong
 *
 */
public interface IBaseDao {

	/**
	 * 执行sql语句，返回结果一般为空。 插入，删除等操作
	 * @param sql SQL语句
	 * @param params 参数
	 * @return
	 */
	public int exec(String sql, Object[] params);
	
	/**
	 * 执行sql语句，返回结果一般为数量。 获取记录个数等
	 * @param sql
	 * @param params
	 * @return
	 */
	public int exec_count(String sql, Object[] params);
	
	/**
	 * 执行sql语句，返回结果为单一对象。 一般用于精确查询。
	 * @param sql
	 * @param params
	 * @return
	 */
	public Object exec_single(String sql, Object[] params);
	
	/**
	 * 执行sql语句，返回结果为列表。 一般用于查询多个记录
	 * @param sql
	 * @param params
	 * @return
	 */
	public List<Object> exec_list(String sql, Object[] params);
	
}
